 package com.gmrz.uaf.protocol.v1.schema;
 
 import com.google.gson.annotations.Expose;
 import com.google.inject.Inject;
 import com.google.inject.name.Named;
 
 public class RegistrationRequest
 {
 
   @Expose
   private OperationHeader header;
 
   @Expose
   private ServerChallenge challenge;
 
   @Expose
   private String username;
 
   @Expose
   private Policy policy;


   public OperationHeader getHeader()
   {
     return this.header;
   }
 
   @Inject
   private void setHeader(@Named("registration") OperationHeader header) {
     this.header = header;
   }
 
   public ServerChallenge getChallenge() {
     return this.challenge;
   }
 
   @Inject
   private void setChallenge(ServerChallenge challenge) {
     this.challenge = challenge;
   }
 
   public String getUsername() {
     return this.username;
   }
 
   public void setUsername(String username) {
     this.username = username;
   }
 
   public RegistrationRequest withUsername(String username) {
     this.username = username;
     return this;
   }
 
   public Policy getPolicy() {
     return this.policy;
   }
 
   public void setPolicy(Policy policy) {
     this.policy = policy;
   }
 
   public RegistrationRequest withPolicy(Policy policy) {
     this.policy = policy;
     return this;
   }
 }
